package it.alsoft.dojomanager.be.dao;

import java.io.Serializable;
import java.util.List;

/**
 * 
 * Very simple generic DAO interface that does not explicitly support multiple
 * actions before flush
 * 
 * @param <ID> key type
 * @param <T> value type
 */

public interface GenericDao<ID extends Serializable, T extends Serializable> {
	T findByID(ID id);
	void persist(T target);
	T merge(T target);
	void delete(T target);
	void deleteAll();
	List<T> findAll();
	void flush();
}